package top.continew.admin.generator.model.req;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;

/**
 * 申请转派请求
 */
@Data
@Schema(description = "申请转派请求")
public class TransferApplyReq {

    /**
     * 任务ID
     */
    @Schema(description = "任务ID", example = "1")
    @NotNull(message = "任务ID不能为空")
    private Long taskId;

    /**
     * 接收人ID
     */
    @Schema(description = "接收人ID", example = "2")
    @NotNull(message = "接收人ID不能为空")
    private Long toUserId;

    /**
     * 转派原因
     */
    @Schema(description = "转派原因", example = "工作调整")
    @Size(max = 500, message = "转派原因长度不能超过 {max} 个字符")
    private String transferReason;

    /**
     * 附件链接
     */
    @Schema(description = "附件链接", example = "http://example.com/file1.jpg,http://example.com/file2.jpg")
    private String attachmentUrls;
}